<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title>管理取派员</title>
		<!-- 导入jquery核心类库 -->
		<script type="text/javascript" src="../../js/jquery-1.8.3.js"></script>
		<!-- 导入easyui类库 -->
		<link rel="stylesheet" type="text/css" href="../../js/easyui/themes/default/easyui.css">
		<link rel="stylesheet" type="text/css" href="../../js/easyui/themes/icon.css">
		<link rel="stylesheet" type="text/css" href="../../js/easyui/ext/portal.css">
		<link rel="stylesheet" type="text/css" href="../../css/default.css">
		<script type="text/javascript" src="../../js/easyui/jquery.easyui.min.js"></script>
		<script type="text/javascript" src="../../js/easyui/ext/jquery.portal.js"></script>
		<script type="text/javascript" src="../../js/easyui/ext/jquery.cookie.js"></script>
		<script src="../../js/easyui/locale/easyui-lang-zh_CN.js" type="text/javascript"></script>
		<script type="text/javascript">
			//采用Jquery的方法 将表单中的数据转化成json格式的数据
			$.fn.serializeJson = function() {
				var serializeObj = {};
				var array = this.serializeArray();
				var str = this.serialize();
				$(array).each(function() {
					if(serializeObj[this.name]) {
						if($.isArray(serializeObj[this.name])) {
							serializeObj[this.name].push(this.value);
						} else {
							serializeObj[this.name] = [serializeObj[this.name], this.value];
						}
					} else {
						serializeObj[this.name] = this.value;
					}
				});
				return serializeObj;
			};


			function doAdd() {//添加功能
				$('#addWindow').window("open");
			}
			
			function doEdit(){//添加修改功能					
				//1.获取当前datagrid选中的数据
				var rows = $("#grid").datagrid('getSelections');
				if(rows.length !=1){//即多选   或没选
					
					$.messager.alert("提示信息","只能修改一行数据","warning");
				}else{
					var row =rows[0];
					//2.进行数据回显
					$("#courierForm").form('load',row);
					//显示窗口
						$('#addWindow').window("open");
				}		
			};
			//作废功能
			function doDelete(){//批量作废的功能实现 即将deltag字段的值改为1即可
				//1.获取页面当前datagrid所有 选中的对象
				var rows = $("#grid").datagrid("getSelections");
				//2.判断 如果没选中则弹出警告窗口,否则执行3
				if(rows.length ==0){//即没有选中的数据  则需要弹出警告框提示
					$.messager.alert("警告","作废快递员操作,至少选中一行数据","warning");
				}else{
					//3.遍历数组  获得所有选中的id值  放到一个数组中
					var array = new  Array();
					for (var i=0;i<rows.length;i++) {
						array.push(rows[i].id);
					}
				//4.拼接字段的方法   注意:原理表单中必须有隐藏字段 表名id
				var ids = array.join(",");//注意:数组拼接成字符串的方法
				//5.将拼好的字段发送给后台服务器
				window.location.href="../../courier_delBatch.action?ids="+ids;
				}
				
			}
			//还原功能
			function doRestore(){
				//1.获得当前页面中选中需要还原的所有 detegrid对象
				var rows = $("#grid").datagrid("getSelections");
				//2.判断如果没选中,则弹出提醒窗口  否则执行3
				if(rows.length ==0){//一行都没有选中
					$.messager.alert("警告","还原快递员,至少要选中一条数据","warning");
				}else{
					//获得所有选中的id ,并存到数组中    并拼接成字符串
					var array= new Array();
					for(var  i=0;i<rows.length;i++){
						array.push(rows[i].id);
					}
					//拼成字符串
					var ids  = array.join(",");
					//将字符创发送到服务器
					window.location.href="../../courier_ResBatch.action?ids="+ids;
				}
			}
			//工具栏
			var toolbar = [ {
				id : 'button-add',	
				text : '增加',
				iconCls : 'icon-add',
				handler : doAdd
			}, {
				id : 'button-edit',
				text : '修改',
				iconCls : 'icon-edit',
				handler : doEdit
			}, {
				id : 'button-delete',
				text : '作废',
				iconCls : 'icon-cancel',
				handler : doDelete
			},{
				id : 'button-restore',
				text : '还原',
				iconCls : 'icon-save',
				handler : doRestore
			},{
				id : 'button-rsearch',
				text : '查询',
				iconCls : 'icon-search',
				handler : function(){
					//显示查询窗口
					$("#searchWindow").window("open");
				}
			}
			];
			// 定义列
			var columns = [ [ {
				field : 'id',
				checkbox : true,
			},{
				field : 'courierNum',
				title : '工号',
				width : 80,
				align : 'center'
			},{
				field : 'name',
				title : '姓名',
				width : 80,
				align : 'center'
			}, {
				field : 'telephone',
				title : '手机号',
				width : 120,
				align : 'center'
			}, {
				field : 'checkPwd',
				title : '查台密码',
				width : 120,
				align : 'center'
			}, {
				field : 'pda',
				title : 'PDA号',
				width : 120,
				align : 'center'
			}, {
				field : 'standard.name',
				title : '取派标准',
				width : 120,
				align : 'center',
				formatter : function(data,row, index){
					if(row.standard != null){
						return row.standard.name;
					}
					return "";
				}
			}, {
				field : 'type',
				title : '取派员类型',
				width : 120,
				align : 'center'
			}, {
				field : 'company',
				title : '所属单位',
				width : 200,
				align : 'center'
			}, {
				field : 'deltag',
				title : '是否作废',
				width : 80,
				align : 'center',
				formatter : function(data,row, index){
					if(data==null){
						return "正常使用"
					}else if(data=="1"){
						return "已作废";
					}
				}
			}, {
				field : 'vehicleType',
				title : '车型',
				width : 100,
				align : 'center'
			}, {
				field : 'vehicleNum',
				title : '车牌号',
				width : 120,
				align : 'center'
			} ] ];
			
			$(function(){
				// 先将body隐藏，再显示，不会出现页面刷新效果
				$("body").css({visibility:"visible"});
				
				// 取派员信息表格     可以在这里面添加查询功能
				$('#grid').datagrid( {
					iconCls : 'icon-forward',
					fit : true,
					border : false,
					rownumbers : true,
					striped : true,
					pageList: [3,6,10],//分页项可以选每页显示信息条数
					pagination : true,//表名开启了分页项  既可以在页面底部看到分页效果
					toolbar : toolbar,
					url : "../../courier_pageQuery.action",
			//当页面加载完成后,会自动向url路径发送请求,并携带者分页的参数
					idField : 'id',
					columns : columns,
					onDblClickRow : doDblClickRow
				});
				
				// 添加取派员窗口
				$('#addWindow').window({
			        title: '添加取派员',
			        width: 800,
			        modal: true,
			        shadow: true,
			        closed: true,
			        height: 400,
			        resizable:false
			    });
				
			});
		
			function doDblClickRow(){
				alert("双击表格数据...");
			}
			//自己添加的功能代码
			$(function(){
				$("#save").click(function(){
					//判断form元素是否满足 校验原则
					if($("#courierForm").form("validate")){
						$("#courierForm").submit();
					}else{
						$.messager.alert("警告","表单中存在非法输入项","warming");
					}
				});
				//查询按钮事件    多条件查询
				$("#searchBtn").click(function(){
					var params =$("#searchForm").serializeJson();//将搜索表单转成json格式的数据
					//将json对象绑定到datagrid上,完成带条件查询请求
					$("#grid").datagrid("load",params);
					//当页面加载完成后,就想向服务器发送请求,并将page rows params携带到后台
					//关闭查询窗口
					$("#searchWindow").window("close");
				})
			});
			
		</script>
	</head>

	<body class="easyui-layout" style="visibility:hidden;">
		<div region="center" border="false"><!--采用datagrid数据表格,可以完成很多功能,当前是获取别处数据显示在页面-->
			<table id="grid"></table>
		</div>
		<!--增加快递员的窗口页面   默认也是关闭的,只有点击 增加按钮才会弹出-->
		<div class="easyui-window" title="对收派员进行添加或者修改" id="addWindow" collapsible="false" minimizable="false" maximizable="false" style="top:20px;left:200px">
			<div region="north" style="height:31px;overflow:hidden;" split="false" border="false">
				<div class="datagrid-toolbar">
					<a id="save" icon="icon-save" href="#" class="easyui-linkbutton" plain="true">保存</a>
				</div>
			</div>

			<div region="center" style="overflow:auto;padding:5px;" border="false">
				<form id="courierForm" action="../../courier_save.action" method="post">
					<table class="table-edit" width="80%" align="center">
						<tr class="title">
							<td colspan="4">收派员信息</td>
						</tr>
						<tr>
							<td>快递员工号</td>
							<td>
								<input type="text" name="courierNum" class="easyui-validatebox" required="true" />
							</td>
							<td>姓名</td>
							<td>
								<input type="text" name="name" class="easyui-validatebox" required="true" />
							</td>
						</tr>
						<tr>
							<td>手机</td>
							<td>
								<input type="text" name="telephone" class="easyui-validatebox" required="true" />
							</td>
							<td>所属单位</td>
							<td>
								<input type="text" name="company" class="easyui-validatebox" required="true" />
							</td>
						</tr>
						<tr>
							<td>查台密码</td>
							<td>
								<input type="text" name="checkPwd" class="easyui-validatebox" required="true" />
							</td>
							<td>PDA号码</td>
							<td>
								<input type="text" name="pda" class="easyui-validatebox" required="true" />
							</td>
						</tr>
						<tr>
							<td>快递员类型</td>
							<td>
								<input type="text" name="type" class="easyui-validatebox" required="true" />
							</td>
							<td>取派标准</td>
							<td>
								<input type="text" name="standard.id" class="easyui-combobox" 
									data-options="required:true,valueField:'id',textField:'name',
									url:'../../standard_findAll.action'"/>					
							</td>
						</tr>
						<tr>
							<td>车型</td>
							<td>
								<input type="text" name="vehicleType" class="easyui-validatebox" required="true" />
							</td>
							<td>车牌号</td>
							<td>
								<input type="text" name="vehicleNum" class="easyui-validatebox" required="true" />
							</td>
						</tr>
					</table>
				</form>
			</div>
		</div>
		
		<!-- 查询快递员   默认该窗口是关闭的     这是条件查询窗口-->
		<div class="easyui-window" title="查询快递员窗口" closed="true" id="searchWindow" collapsible="false" minimizable="false" maximizable="false" style="width: 400px; top:40px;left:200px">
			<div style="overflow:auto;padding:5px;" border="false">
				<form id="searchForm">
					<table class="table-edit" width="80%" align="center">
						<tr class="title">
							<td colspan="2">查询条件</td>
						</tr>
						<tr>
							<td>工号</td>
							<td>
								<input type="text" name="courierNum" />
							</td>
						</tr>
						<tr>
							<td>收派标准</td>
							<td>
								<input type="text" name="standard.name" />
							</td>
						</tr>
						<tr>
							<td>所属单位</td>
							<td>
								<input type="text" name="company" />
							</td>
						</tr>
						<tr>
							<td>类型</td>
							<td>
								<input type="text" name="type" />
							</td>
						</tr>
						<tr>
							<td colspan="2"><a id="searchBtn" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">查询</a> </td>
						</tr>
					</table>
				</form>
			</div>
		</div>
	</body>

</html>